<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8"/>
    <title>Title</title>
</head>
<body>
<script>
    /*
* 给你两个有序整数数组 nums1 和 nums2，请你将 nums2 合并到 nums1 中，使 nums1 成为一个有序数组。

初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 的空间大小等于 m + n，这样它就有足够的空间保存来自 nums2 的元素。


示例 1：
输入：nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3
输出：[1,2,2,3,5,6]
示例 2：

输入：nums1 = [1], m = 1, nums2 = [], n = 0
输出：[1]

来源：力扣（LeetCode）
链接：https://leetcode-cn.com/problems/merge-sorted-array
著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
*
*
* 双指针
* */

    const nums1 = [1, 4, 7],
        nums2 = [2, 5, 6];

    var merge = function (nums1, nums2) {
        let len1 = nums1.length - 1;
        let len2 = nums2.length - 1;
        let lenSum = nums1.length + nums2.length - 1;

        while (len1 >= 0 && len2 >= 0) {
            nums1[lenSum--] = nums1[len1] >= nums2[len2] ? nums1[len1--] : nums2[len2--];
        }
        while (len1 >= 0) {
            nums1[lenSum--] = nums1[len1--];
        }
        while (len2 >= 0) {
            nums1[lenSum--] = nums2[len2--];
        }
        return nums1;
    };

    console.log(merge(nums1, nums2));
</script>
</body>
</html>
